// 需求：记录当前页面的刷新次数和刷新时的时间，每次刷新都自动自增一次，并显示到页面中，要求用TypeScript实现

// 本地存储
interface Item {
  count: number
  time: string
}

const key = 'ts-key'
// 本地存储-存
function setDate(data: Item[]): void {
  localStorage.setItem(key, JSON.stringify(data))
}

// 本地存储 - 取
function getData(): Item[] {
  return JSON.parse(localStorage.getItem(key) || '[]')
}

// ------- 测试 --------
// setDate([{ count: 1, time: '18:12:59' }])
// const arr = getData()
// arr.forEach(item => {
//   console.log(`刷新次数为${item.count},刷新时间为${item.time}`);
// })

function pageLoad() {
  // console.log(getData());
  
  // 获取本地存储数据
  const list = getData()

  // 获取当前时间
  const time = new Date().toTimeString().slice(0, 8)

  // 获取数组最后一项
  const lastItem = list[list.length - 1]

  // 刷新次数+1
  if (lastItem) {
    list.push({count: lastItem.count + 1, time:time})
  } else {
      // 初始化刷新次数
      list.push({count: 1, time:time})
    }

    // 存储到本地
  setDate(list)

  const box = document.getElementById('box') as HTMLDivElement
  // 渲染数据
  box.innerHTML = list.map(item=>`<p>刷新次数为${item.count},刷新时间为${item.time}</p>`).join('')
}

pageLoad()






